1. Field of Invention
The present invention relates to a discrete cosine transformation (DCT) method and system and a discrete cosine inverse transformation (inverse DCT: IDCT) method and system used for digital image processing etc. More particularly, it relates to a two-dimensional 4-row.times.4-column discrete cosine transformation (4.times.4 DCT) method and system and a two-dimensional 4.times.4 discrete cosine inverse transformation (4.times.4 IDCT) method and system.
2. Description of the Related Art
Discrete cosine transformation (DCT) and inverse discrete cosine transformation (or discrete cosine inverse transformation: IDCT) are types of orthogonal transformations which perform transformations from a real domain (space) to a frequency domain (space) and inverse transformations thereof and are used in, for example, image signal processing.
A two-dimensional 4.times.4 DCT, which is one type of DCT, and a two-dimensional 4.times.4 IDCT, which is the inverse transformation of the 4.times.4 DCT, in general can be expressed by the following equations 1 and 2. EQU DCT: [Y]=1/2 [P] [X] [P.sup.t ] (1) EQU IDCT: [X]=1/2 [P.sup.t ] [Y] [P] (2)
Here, the matrix [X] denotes original data in a real domain consisting of four rows and four columns, and the matrix [Y] denotes matrix data in a frequency domain consisting of four rows and four columns. The matrix [P] denotes a constant matrix consisting of 4 rows and 4 columns for the DCT, and the matrix [P.sup.t ] indicates a transposition matrix of the matrix [P]. Below, suffixes t on the top right indicate transposition matrices.
The matrix [P] is defined by the equation 3. ##EQU1##
The coefficients (factors) A, B, and C in the matrix [P] are defined by Table 1.
TABLE 1 ______________________________________ ##STR1## ##STR2## ##STR3## ______________________________________
Conventionally, the computation processing of the two-dimensional 4.times.4 DCT represented by the above-mentioned equations is realized by repeating a one-dimensional DCT two times. Namely, first, the inner product computation (multiplication): [P.multidot.X] of four dimensions between the matrix [P] and matrix [X] (or the inner product computation: [X.multidot.P.sup.t ] of the matrix [X] and the matrix [P.sup.t ]) is carried out 16 times using four multipliers, and further the inner product computation: [P.multidot.X.multidot.P.sup.t ] of four dimensions between the matrix [P.multidot.X] obtained by the above-described computation and the matrix [P.sup.t ] (or the inner product computation: [P.multidot.X.multidot.P.sup.t ] of the matrix [P] and the matrix [X.multidot.P.sup.t ]) is carried out 16 times using another four multipliers, to obtain the matrix [Y]. For this computation, eight in total multipliers become necessary, and the number of times of multiplication needed for finding respective components (16 components) of the matrix [Y] becomes 128 times.
Moreover, also the two-dimensional 4.times.4 IDCT system has been realized by similarly repeating the one-dimensional IDCT two times. Namely, first the 4-dimensional inner product computation: [Y.multidot.P] between the matrix [Y] and the matrix [P] (or the inner product computation: [P.sup.t .multidot.Y] of the matrix [P.sup.t ] and the matrix [Y]) is carried out 16 times using four multipliers, and further the 4-dimensional inner product computation: [P.sup.t .multidot.Y.multidot.P] between the matrix [P.sup.t ] and the matrix [Y.multidot.P] obtained by the computation (or the inner product computation: [P.sup.t .multidot.Y.multidot.P] between the matrix [P.sup.t Y] obtained by the computation and the matrix [P]) is carried out 16 times using another four multipliers, to obtain the matrix [X]. Also in this computation, eight in total multipliers become necessary, and the number of times of multiplication necessary for finding the respective components (16 components) of the matrix [X] becomes 128 times.
In the conventional system for executing the two-dimensional 4.times.4 DCT and two-dimensional 4.times.4 IDCT mentioned above, the one-dimensional DCT and one-dimensional IDCT are each repeated two times, whereby two multiplications are included in the data path. Therefore, it suffers from a disadvantage of a reduction of the precision due to the accumulation of error caused by omitting the figures below the decimal places, for example, and due to the accumulation of the computation error by the approximation of the irrational numbers.
Moreover, it suffers from another disadvantage in that due to the one-dimensional DCT and one-dimensional IDCT being performed two times, the number of times of the multiplication is increased, and consequently, a longer operation time is taken.
Further, it suffers from another disadvantage in that since many multiplication circuits are needed, the circuit structure per se of the two-dimensional 4.times.4 DCT system and two-dimensional 4.times.4 IDCT system becomes very complex due to a large number of multiplication circuits each having a complex circuit structure compared with an addition circuit or a subtraction circuit.